package com.qys.livesMall.app.user.service;

import com.qys.livesMall.app.user.model.dto.sys.SysLimitUrlPageDTO;
import com.qys.livesMall.app.user.model.entity.Limit;
import com.baomidou.mybatisplus.extension.service.IService;
import com.qys.livesMall.app.user.model.vo.sys.LimitVO;

import java.util.List;

/**
 * <p>
 * 用户权限控制 服务类
 * </p>
 *
 * @author
 * @since 2023-07-31
 */
public interface LimitService extends IService<Limit> {


    Limit getByUserIdAndLimitUrlId(Long userId, Long limitUrlId);

    /**
     * 初始化用户权限
     */
    List<Limit> processLimit(Long userId);

    List<LimitVO> userLimit(SysLimitUrlPageDTO queryDTO);


    void init();

    /**
     * 关闭/打开权限
     */
    void coLimit(String id);

    /**
     * 批量 关闭/打开权限
     */
    void coLimitBatch(List<Long> userIdList, Long limitUrlId, Byte status);
}
